package com.smart.campus.web.utils;

import com.smart.campus.framework.util.ShiroUtils;
import com.smart.campus.system.domain.SysDept;
import org.springframework.util.Assert;

/**
 * 获取学校id
 */
public class SchoolUtil {

    /**
     * 早上上课时间
     */
    public static String morningBeginTime = "08:00:00";
    /**
     * 早上放学时间
     */
    public static String morningEndTime = "12:00:00";
    /**
     * 中午上课时间
     */
    public static String noonBeginTime = "14:30:00";
    /**
     * 中午放学时间
     */
    public static String noonEndTime = "18:00:00";
    /**
     * 下午上课时间
     */
    public static String afternoonBeginTime = "19:30:00";
    /**
     * 下午放学时间
     */
    public static String afternoonEndTime = "21:00:00";

    /**
     * 根据当前操作人获取学校id
     * @return
     */
    public static Long getSchoolId(){
        SysDept dept = ShiroUtils.getSysUser().getDept();
        Assert.notNull(dept);
        //获取部门祖级列表
        String ancestors = dept.getAncestors();
        String[] ancestorsArray = ancestors.split(",");

        //第二级为学校级别 直接返回
        if(ancestorsArray.length > 2){
            return Long.valueOf(ancestorsArray[2]);
        }
        if(ancestorsArray.length == 2){
            return dept.getDeptId();
        }
        return 0L;
    }

    /**
     * 根据当前操作人获取学校id
     * @return
     */
    public static Long getSchoolId(SysDept dept){
        Assert.notNull(dept);
        //获取部门祖级列表
        String ancestors = dept.getAncestors();
        String[] ancestorsArray = ancestors.split(",");

        //第二级为学校级别 直接返回
        if(ancestorsArray.length > 2){
            return Long.valueOf(ancestorsArray[2]);
        }
        if(ancestorsArray.length == 2){
            return dept.getDeptId();
        }
        return 0L;
    }

    /**
     * 判断奇数
     * @param a
     * @return
     */
    public static boolean isCome(int a){
        if((a&1) != 1){   //是奇数 表示进
            return false;
        }
        return true;
    }

    /**
     * 获取申请状态
     * @param approveStatus
     * @param curStatus
     * @return
     */
    public static int getApplySpStatus(int approveStatus,int curStatus){
        //审批通过
        if(approveStatus == 1){
            if(curStatus == 1){
                return 3;
            }
            if(curStatus == 2){
                return 5;
            }
        }
        //审批拒绝
        if(approveStatus == 2){
            if(curStatus == 1){
                return 4;
            }
            if(curStatus == 2){
                return 6;
            }
        }
        return 7;
    }
    public static void main(String[] args) {
        System.out.println(isCome(Integer.parseInt("003")));
    }
}
